package innerclassdemo4;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 阿宾
 * Date: 2024-10-16
 * Time: 15:29
 */
public class Test2 {

    public static void main(String[] args) {
        //下面的匿名内部类可以理解为：实现implements了接口Swim的对象
        //可以用Swim类型的变量接收，发生接口多态
        Swim s = new Swim(){
            @Override
            public void swim() {
                System.out.println("重写之后游泳方法");
            }
        };
        //编译看左边，运行看右边
        s.swim();


        //同样，因为是实现了接口Swim的对象，对象是可以调用在自己类中写的方法的
        //则匿名内部类也可以调用自己类中的方法
        new Swim(){
            @Override
            public void swim() {
                System.out.println("重写之后游泳方法");
            }
        }.swim();
    }
}
